/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package logica;

import java.util.Date;
import java.util.List;
import util.datatypes.DTReserva;
import util.datatypes.DTTiposEntrada;


/**
 *
 * @author bruno
 */
public class Reserva {
    private int id;
    private Date fecha;
    private double  costoTotal;
    private boolean estado;
    private boolean vendida;
    private Funcion funcion;
    private List<DTTiposEntrada> tiposEntradas;

    public Reserva(int id, Date fecha, double  costoTotal, boolean estado, boolean vendida, Funcion funcion, List<DTTiposEntrada> tipos) 
    {
        this.id = id;
        this.fecha = fecha;
        this.costoTotal = costoTotal;
        this.estado = estado;
        this.vendida = vendida;
        this.funcion = funcion;
        this.tiposEntradas = tipos;
    }

    public Reserva() 
    {
    }
    
    public Reserva(int id) {
        this.id = id;
    }

    public double  getCostoTotal() {
        return costoTotal;
    }

    public void setCostoTotal(double  costoTotal) {
        this.costoTotal = costoTotal;
    }

    public boolean isEstado() {
        return estado;
    }

    public void setEstado(boolean estado) {
        this.estado = estado;
    }

    public boolean isVendida() {
        return vendida;
    }

    public void setVendida(boolean vendida) {
        this.vendida = vendida;
    }

    public Date getFecha() {
        return fecha;
    }

    public void setFecha(Date fecha) {
        this.fecha = fecha;
    }

    public Funcion getFuncion() {
        return funcion;
    }

    public void setFuncion(Funcion funcion) {
        this.funcion = funcion;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public List<DTTiposEntrada> getTiposEntradas() {
        return tiposEntradas;
    }

    public void setTiposEntradas(List<DTTiposEntrada> tiposEntradas) {
        this.tiposEntradas = tiposEntradas;
    }

    public DTReserva getReserva()
    {
        return new DTReserva(id, fecha, costoTotal, estado, vendida, getFuncion().getFuncion(), tiposEntradas);
    }

    @Override
    public String toString() {
        return fecha + " " + costoTotal + " " + estado + " " + vendida + " " + funcion.getHoraFin() +  " " + funcion.getHoraFin();
    } 
}
